This invention relates to a system for receiving a digital broadcast in an information processor such as a computer. More particularly, the invention relates to a method of processing received data.
Examples of the prior art are disclosed in the following literature, by way of example: (1) Japanese Patent Kokai Publication JP-A-8-307784, (2) Japanese Patent Kokai Publication JP-A-8-237154 and (3) Japanese Patent Kokai Publication JP-A-5-328320.
JP-A-8-307784 discloses a method of receiving a TV broadcast at a personal computer which involves a method of making a connection when an analog terrestrial TV broadcast is received by the personal computer. Specifically, since a video signal, audio signal, data signal and control signal appear at the output of a broadcast reception card, a personal computer can be converted to an analog terrestrial TV receiving system if c the card is connected to circuitry within the personal computer. However, since a digital broadcast employs a receiving scheme different from that of an analog broadcast, it is not easy to realize the proposed system.
JP-A-8-237154 teaches to connect a tuner card for a digital broadcast to a personal computer, whereby the digital output of the tuner is input to the personal computer so that the personal computer can receive the digital broadcast with ease. With this set-up, however, a subscription broadcast cannot be received.
In order to receive a subscription broadcast, an IC card is necessary when the broadcast is a digital satellite broadcast. FIG. 11 illustrates the configuration of a typical digital satellite broadcast receiver system according to the prior art. As shown in FIG. 11, a digital satellite broadcast receiver 119, to which a parabolic antenna 101 is connected, includes a digital satellite broadcast tuner 102, a descrambler 103, a transport stream decoder 105, a DRAM 104, a decoder 106 in compliance with the MPEG2 standard, an SDRAM 107, a video encoder 108 and an audio D/A converter 109. The computer side of the receiver has a microcomputer 112, a ROM 113, a DRAM 114, a network control circuit 118 for controlling the connection to a telephone line, a modem 117, a control unit 111 associated with a remote controller and control panel, and an IC card interface 116. The microcomputer 112 sends data to and receives data from the transport stream decoder 105 and descrambler 103 via a system bus 110.
In the conventional system shown in FIG. 11, the special-purpose IC card 115 is required in order to view and hear a subscription broadcast. Information such as the channels capable of being received from a subscription broadcast for which the subscriber has given agreement is stored on the IC card and the card is always necessary to acquire the subscription broadcast. The conventional digital satellite broadcast receiver is controlled by the equivalent of a 16-bit microcomputer and performs operations such as the descrambling of a subscription broadcast. In order to decode MPEG2 transport streams, use is made of an LSI chip in special-purpose hardware and section formation of packets is carried out using a memory connected to or incorporated within the LSI chip.
Further, JP-A-5-328320 discloses an arrangement in which, in a manner similar to that of JP-A-8-307784, character information for an analog terrestrial character multiplex TV broadcast is input to a personal computer by an RS-232C interface. However, this arrangement does not support digital broadcast.
The following problems have been encountered in the course of investigations toward the present invention.
Thus, the conventional systems have the following problems:
One problem is that section formation of packets constituting an MPEG2 transport stream is carried out by a special-purpose MPEG2 transport stream decoder LSI chip and a memory connected to or incorporated within the LSI chip. The reason for this is that the processing capability of the microcomputer that implements overall control is not adequate for carrying out the section formation.
A second problem is that in order to perform descrambling to receive a digital satellite subscription broadcast, a microcomputer executes processing which includes fetching a descrambling code that has been written to an IC card and descrambling scrambled packets contained in an MPEG2 transport stream output by a digital tuner. Since overall management of a digital satellite broadcast receiver is carried out by the microcomputer, cost would be too high if management were performed by a processor other than this microprocessor.
A third problem is that an MPEG2 decoder LSI chip comprising hardware is necessary in order to decode compressed video and audio in the digital satellite broadcast receiver. The reason for this is that the capability of the microcomputer controlling the receiver is not sufficient for executing MPEG2 decoding. Even if a processor having sufficient capability is developed, once the product is shipped the existing processor cannot be easily replaced by the processor of higher capability.
Accordingly, an object of the present invention is to provide a digital broadcast receiving system for use with an information processor, in which use of a special-purpose LSI chip is unnecessary for forming a section of packets of an MPEG2 transport stream, the section formation may be carried out by a computer CPU with the minimum amount of hardware, and it is unnecessary to use a special-purpose microcomputer for the descrambling that is needed to receive a subscription broadcast, with the descrambling being implemented by the minimum amount of hardware by performing control using the computer CPU, thus making it possible to exploit the processing capability of the computer CPU to the maximum extent.
Further objects of the present invention will become apparent in the entire disclosure.
According to one aspect of the present invention, the foregoing object is attained by providing a system for receiving a digital broadcast in an information processing apparatus such as a computer, the system having means for filtering an MPEG2-based transport stream and means for transferring the filtered stream to the system memory of a computer by DMA.
More specifically, the system according to the present invention includes filtering means for filtering packets, by a specified packet ID (termed PID), from a MPEG2-based transport stream output by a descrambler, DMA control means (DMA controller) for transferring the filtered output to a system memory of a computer, and a FIFO (First In First Out) memory, which is provided between the filtering means and the DMA control means, for when the computer bus is congested.
In another aspect of the invention, the system includes means for accessing an IC card from a computer CPU, and means for accessing a descrambler.
More specifically, the system according to the present invention includes an IC card interface for accessing an IC card, an RS-232C controller for performing communication of data, and an input/output (I/O) controller adapted so that access is possible from a computer CPU, the input/output controller providing a signal descrambler access and a signal for controlling a tuner.
Further, since accessing of an IC card involves a data transfer speed that is very low in comparison with the data transfer capability of a computer bus, a FIFO memory is provided between the RS-232C controller and the input/output controller in order to lighten the load on the computer bus when the IC card is accessed.
In operation, a MPEG2 transport stream output by a digital tuner is descrambled by a descrambler if the broadcast is a subscription broadcast that has been scrambled. If the broadcast is not a subscription broadcast, then the transport stream is allowed to pass through and is output as is.
The MPEG2 transport stream output by the descrambler is filtered based upon packet IDs contained in packets, only packets desired by the subscriber are extracted and these packets are transferred, by DMA, through a FIFO memory to the system memory of a computer by a DMA controller.
By virtue of this arrangement, only packets of identical PIDs are transferred to the system memory. As a result, the computer CPU is capable of executing processing for forming original transmitted section(s) while observing the headers of packets. This can be accomplished without subjecting the computer CPU to an excessive load.
In a case where a subscription broadcast is received, data that has been formed into section(s) is transferred via the input/output controller in an amount that conforms to the capacity of the FIFO memory. The FIFO memory transfers the data to the RS-232C controller, which proceeds to convert the data to serial data and transfer the data to the IC card interface.
The IC card interface transfers data to the IC card. Since accessing of the IC card is by half-duplexing, only the required number of items of data are transferred to the IC card. After all the necessary data has been transmitted, the IC card interface reads the data out of the IC card following a delay for processing involving the IC card.
The data that has been read out is converted to parallel data by the RS-232C controller and the data is transferred to the FIFO memory. When the data enters the FIFO memory, an interrupt signal is sent to the computer. The computer reads the data that has entered the FIFO memory out to the system memory via the input/output interface. The computer CPU outputs the data, which has been read out of the IC card, to the descrambler via the input/output controller. Thus the descrambler is capable of descrambling the data.
Thus, in accordance with the present invention, descrambling for receiving a subscription broadcast from the section formed data can be performed by the CPU of a computer.
Particularly, the present invention provides solution according to various specific aspects.
According to a first aspect, there is provided a system for receiving a digital satellite broadcast in an information processing apparatus. The system comprises:
(a) filter means for filtering packets, by packet ID, from an MPEG2-based transport stream, which is output by a digital satellite broadcast tuner, to facilitate section formation from packets of the MPEG2-based transport stream by a CPU of a computer, filtering being performed after the transport stream is descrambled if the broadcast is a subscription broadcast;
(b) a buffer memory for storing resulting filtered data, which has been output by said filter means, until the data can be accessed by a host bus; and
(c) DMA control means for transferring, by direct memory access, content of said buffer memory to a system memory of the computer via the host bus.
According to a second aspect, there is provided a system receiving a digital broadcast in an information processing apparatus comprising:
(a) an input/output controller for writing/reading the content of the system memory obtained from the host bus in order that data for descrambling may be sent to the IC card by the CPU so that this data may be read out of the IC card;
(b) a second buffer memory for temporarily storing data sent to the IC card; and
(c) RS-232C control means for transmitting data in said buffer memory to the IC card via an IC card interface;
(d) wherein after the data is transmitted to the IC card, the data for descrambling is read by said RS-232C control means via the IC card interface;
(e) wherein the data read by said RS-232C control means is stored temporarily by said second buffer memory until the data can be accessed by the host bus; and
(f) wherein the descrambling data, which has been read out to the system memory from said second buffer memory via the host bus, is written to said descrambler via said input/output controller, whereupon a digital satellite subscription broadcast is descrambled.
In the aforementioned aspects, the buffer memory may each comprise a first in first out FIFO memory.
In the system of the first aspect, packets of a descrambled MPEG2-base transport stream are assigned video and audio IDs as IDs of packets in the MPEG2-based transport stream, the packets are transferred to a system memory of a computer by direct memory access, a video and audio MPEG2-based packetized elementary stream is created from the packets, which have been transferred to the system memory, by a CPU of the computer, the packets are decoded by the CPU, and the result of decoding video is transferred to a video display unit of the computer to display video on a display device, and the result of decoding audio is transferred to an audio reproducing unit of the computer to reproduce audio from a speaker.
In the system, the filter means for filtering packets from the MPEG2-based transport stream has a special-purpose filter for video and audio packets among the packets of a descrambled MPEG2-based transport stream;
the filter for video and audio packets allowing only a packetized elementary stream to pass, stores this output in an MPEG2-based transport stream buffer and transfers the stream to an MPEG2 decoder, followed by decoding the stream;
wherein the result of decoding video is transferred to a video display unit of a computer to display video on a display device; with the result of decoding audio being transferred to an audio reproducing unit of the computer to reproduce audio from a speaker;
wherein in order to achieve conformity between an encoder clock on the side of a broadcasting station and a decoder clock on the receiving side in said filter means, program clock reference data, termed PCR data, is filtered in the filter means for filtering the MPEG2-based transport stream; and
wherein a controller of a voltage-controlled oscillator VCO has means for obtaining the difference between a filtered PCR value and the value of a count of decoder clock pulses supplied to the MPEG2 decoder, performing adjustment in such a manner that the PCR value and value of the count will agree, and adjusting clock frequency of the MPEG2 decoder from the voltage-controlled oscillator VCO.
In the foregoing system a digital terrestrial TV broadcast tuner is substituted for the digital satellite broadcast tuner, and a decoder for supporting high-definition-class high resolution is substituted for the MPEG2 decoder, so that digital terrestrial TV can be viewed by the computer.
According to a third aspect of the present invention, there is provided a system for receiving a digital satellite broadcast in an information processing apparatus. The system comprises:
(a) filter means for extracting packets having Ids that match a packet ID, termed PID, specified in advance, said packets being extracted from an MPEG2-based transport stream supplied by a digital satellite tuner, subject to via a descrambler for descrambling in case of a subscription broadcast;
(b) a buffer memory for temporarily storing a packet output by said filter means; and
(c) DMA control means for transferring, by direct memory access, content of said buffer memory to a memory of the side of a computer.
This system, further comprises:
an IC card interface for accessing an IC card;
communication control means for communicating data with said IC card interface; and
input/output control means for providing access from a CPU of the information processing apparatus;
wherein data on the IC card is read in via the IC card interface and stored in the memory on the said of the computer via the communication control means and the input/output control means, and a signal for supplying said descrambler with key data for descrambling and a control signal for controlling said tuner are output by said input/output control means; and
wherein a second buffer is provided between the communication control means and said input/output control interface, reading/writing of the IC card and control of descrambling being controlled, upon receiving subscription broad cast, by said CPU.